More media, especially videos, get produced and consumed everyday. This means more storage is needed for the newly produced videos, and more bandwidth to serve the consumers. Techniques have been researched and implemented to overcome these difficulties, by reducing storage demand and bandwidth requirements. Traditionally, video coding uses self-similarities within a video to reduce its size; often, even only similarities within a GOP-block (Group Of Pictures). Also, caching has been introduced, to redistribute the bandwidth needs of specific media objects, hence with perfect self-similarity. Other known techniques use HAS (HTTP Adaptive Streaming).